Data stores such as databases can be used to store data for a wide variety of applications. Part of the utility of data stores are the many ways that stored data can be accessed to create data reports, which allow a person to visualize information stored in a particular data store in a way that is meaningful for the person. For example, information stored in a database about individual sales for a business can be collected into a sales report in any number of ways. In many applications a report definition is created using a report definition language that determines what information is provided in a particular report. In addition, the report definition can include information as to the form in which the information is presented in the report.
In some cases, it may be desirable to provide the same report to different remote locations. This may be true in situations where, for example, an organization has operations at multiple sites. In addition, it is possible that different sites will require that the report have certain localized customizations. For example, a sales report may be sent to a first site in an organization located in a first country that desires to see the information printed in a first language. A second site may receive the same report in second country in which a second language is spoken. People at the second site would therefore prefer that the report be provided in a second language. Reports can include other differences from one location to the next. For example, a report having financial information may be presented in a first currency in the first country and a second currency in the second country.
The report definition thus includes at least two aspects: a report design that provides information relative to the type of data desired to be shown in the report and a localization, which provides for differences in how the data might be presented in one location versus another. Localization is provided by creating one version of a report for every locale that is supported by the report. The localization accomplished by modifying the report definition language to create the different versions of the reports and store them in the data store. When changes are required in a particular report, the changes must be coded into every version of the report, making the changes potentially cumbersome and time consuming to make. In addition, localizers, who focus on localization and may not have developing experience, use the report definition to embed localizations into each version of the report definition.
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.